home *** CD-ROM | disk | FTP | other *** search
/ Software of the Month Club 1996 August / Software of the Month Club 1996 August.iso / pc / os2 / famtree / person.ftx < prev    next >
Text File  |  1996-05-20  |  3KB  |  122 lines

  1. /*
  2.    Family Tree Rexx Script FTX
  3.  
  4.    Copyright (C) 1996 by <Nils Meier>
  5.  
  6.    Please send comments to / Kommentar bitte an
  7.         meier2@athene.informatik.uni-bonn.de
  8.  
  9.    <This script shows all informations about the currently selected person
  10.     / Dieses Skript zeigt alle Information des aktuell ausgewaehlten Menschen>
  11.  
  12. */
  13.  
  14. /* ----------------------- Params  /  Parameter ------------------- */
  15.  
  16. IF getLanguage()='Deutsch' THEN DO
  17.    header    ='Persoenliche Daten von '
  18.    name      ='Name            : '
  19.    firstname ='Vorname         : '
  20.    sex       ='Geschlecht      : '
  21.    birthdate ='Geburtsdatum    : '
  22.    birthplace='Geburtsort      : '
  23.    deathdate ='Todesdatum      : '
  24.    deathplace='Todesort        : '
  25.    memo      ='Memo            : '
  26.    picture   ='Bild            : '
  27.    marriage  ='Ehe mit         : '
  28.    child     ='- Kinder        : '
  29.    empty     ='                : '
  30.  
  31.    datasex   = '? männlich weiblich'
  32. END
  33. ELSE DO
  34.    header    ='Personal data of '
  35.    name      ='Name            : '
  36.    firstname ='First name      : '
  37.    sex       ='Sex             : '
  38.    birthdate ='Birth date      : '
  39.    birthplace='Birth location  : '
  40.    deathdate ='Death date      : '
  41.    deathplace='Death location  : '
  42.    memo      ='Memo            : '
  43.    picture   ='Picture         : '
  44.    marriage  ='Marriage with   : '
  45.    child     ='- Children      : '
  46.    empty     ='                : '
  47.  
  48.    datasex   = '? male female'
  49. END
  50.  
  51. /* ----------------- Display Header / Kopf der Ausgabe ------------- */
  52.  
  53. SAY(header||getName()||','||getFirstName())
  54. SAY('.........................................')
  55.  
  56. /* ------------------------------ Output / Ausgabe ----------------- */
  57.  
  58. /* Standard data / Standardinformationen */
  59. SAY(name      ||getName()                )
  60. SAY(firstname ||getFirstName()           )
  61. SAY(sex       ||WORD(datasex,getSex()+1) )
  62. SAY(birthdate ||getBirthDate()           )
  63. SAY(birthplace||getBirthPlace()          )
  64. SAY(deathdate ||getDeathDate()           )
  65. SAY(deathplace||getDeathPlace()          )
  66.  
  67. /* Memo field  /  Memofeld  */
  68. line=1
  69. SAY(memo||getMemo(line))
  70. DO FOREVER
  71.    line=line+1
  72.    result=getMemo(line)
  73.    IF LENGTH(result)=0 THEN LEAVE
  74.    SAY(empty||result)
  75. END
  76.  
  77. /* Marriages  /  Ehen */
  78.  
  79. p=1
  80. rc=selectFamily(p)
  81.  
  82. DO WHILE rc=1
  83.    /* Push Man on Stack  /  Menschen auf Stack */
  84.    rc=doStack('PM')
  85.  
  86.    /* Partner  /  Parner */
  87.    rc=selectPerson('p')
  88.    result=getFirstName()||' '||getName()||'  '
  89.  
  90.    /* MarriageDate  /  Heiratsdatum */
  91.    result=marriage||result||getMarriageDate()
  92.  
  93.    /* Output  /  Ausgabe */
  94.    SAY('.........................................')
  95.    SAY(result)
  96.  
  97.    /* Children  /  Kinder */
  98.    c=1
  99.    rc=selectPerson(c);
  100.    DO WHILE rc=1
  101.       IF c=1 THEN
  102.          result=child||getBirthDate()||' '||getFirstName()||' '||getName()
  103.       ELSE
  104.          result=empty||getBirthDate()||' '||getFirstName()||' '||getName()
  105.       SAY(result)
  106.       c=c+1
  107.       rc=selectPerson(c)
  108.    END
  109.  
  110.    /* Pop Man from Stack  /  Menschen vom Stack */
  111.    rc=doStack('pM')
  112.  
  113.    /* Next Family of Actual /  Naechste Familie des Aktuellen */
  114.    p=p+1
  115.    rc=selectFamily(p)
  116. END
  117.  
  118.  
  119. /* Done / Fertig */
  120. RETURN
  121.  
  122.